The Image Compression Manager provides a number of utility functions for use by your compressor component. These utility functions allow compressor components to manipulate the Image Compression Manager's image description structures.
Your component may use the SetImageDescriptionExtension function to create or update the extended data for an image.
pascal OSErr SetImageDescriptionExtension
(ImageDescriptionHandle desc,
Handle extension,
long idType);
The Image Compression Manager appends the extended data for an image to the appropriate image description structure (see the chapter "Image Compression Manager" in Inside Macintosh: QuickTime for information about image description structures). Note that each compressor type may have its own format for the extended data that is stored with an image. The extended data is similar in concept to the user data that applications can associate with QuickTime movies--see the chapter "Movie Toolbox" in Inside Macintosh: QuickTime for more information about user data in QuickTime movies. Once you have added extended data to an image, you cannot delete it.
Your component may use the GetImageDescriptionExtension function to obtain the extended data for an image.
pascal OSErr GetImageDescriptionExtension
(ImageDescriptionHandle desc,
Handle *extension,
long idType, long index);
The Image Compression Manager appends the extended data for an image to the appropriate image description structure (see the chapter "Image Compression Manager" in Inside Macintosh: QuickTime for information about image description structures). Note that each compressor type may have its own format for the extended data that is stored with an image. The extended data is similar in concept to the user data that applications can associate with QuickTime movies--see the chapter "Movie Toolbox" in Inside Macintosh: QuickTime for more information about user data in QuickTime movies. Once you have added extended data to an image, you cannot delete it.
The RemoveImageDescriptionExtension function allows you to remove an extension based on its type or index.
pascal OSErr RemoveImageDescriptionExtension
(ImageDescriptionHandle desc,
long type, long index);
The CountImageDescriptionExtensionType function counts the number of image description extensions in a specified image description structure.
pascal OSErr CountImageDescriptionExtensionType
(ImageDescriptionHandle desc,
long type, long *count);
The GetNextImageDescriptionExtensionType function retrieves the next extension type encountered after the one you specify.
pascal OSErr GetNextImageDescriptionExtensionType
(ImageDescriptionHandle desc, long *type);